package com.zzzzzz.account;

import java.util.Date;

import com.zzzzzz.common.page.Page;
import com.zzzzzz.core.exception.SystemException;
import com.zzzzzz.core.exception.ZzzzzzException;

public interface UserService {
	
	public void add(SignUpForm signUpForm);

	public void edit(UserEditForm userEditForm);
	
	public void editStatus(Long id, String status, Date updTime);
	
	public void editPic(Long id, String picId);
	
	public void editEmail(UserEmailEditForm userEmailEditForm);
	
	public void editPassword(UserPasswordEditForm userPasswordEditForm);
	
	public User findById(Long id);

	public User findByEmail(String email);
	
	public Page<UserView> findAll(Page<UserView> page);
	
	public void login(String email, String password, boolean rememberMe) throws ZzzzzzException, SystemException;
	
	public Boolean isSignedIn();
	
	public User findCurrentUser() throws ZzzzzzException;
	
	public String findCurrentUserId();
}
